instanceof运算符适用于检测构造函数的prototype属性上是否出现在某个实例对象的原型链上
instanceof 运算符的原理是基于原型链的查找。当使用 obj instanceof Constructor 进行判断时，
JavaScript 引擎会从 obj 的原型链上查找 Constructor.prototype 是否存在，如果存在则返回 true，
否则继续在原型链上查找。如果查找到原型链的顶端仍然没有找到，则返回 false。

instanceof运算符只能用于检查某个对象是否是某个构造函数的实例，不能用于基本类型的检查，如string、number等


「<!-- 手写代码- 实现一个intanceof操作符」 -->

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<script>
  function myIsInstanceOf (obj, func) {
    if (!obj.__proto__) {
      return false
    }
    if (obj.__proto__ === func.prototype){
      return true
    } else {
      return myInstanceOf(obj.__proto__, func)
    }
  }
</script>
<body>
  
</body>
</html>

